package Day_0130;

/**
 * @author zxc
 * @date 2023/01/30 21:48
 **/
public class Thread_Process {
    public static void main(String[] args) {
        /**
         * 问题 ：线程，程序和进程之间的关系？
         * 解答 ：
         * 1.线程 ：
         *  （1）线程是一个比进程更小的执行单位。一个进程在其执行的过程中可以产生多个线程。
         *  （2）与进程不同的是同类的多个线程共享同一块内存空间和一组系统资源，
         *  ===> 所以系统在产生一个线程，或是在各个线程之间作切换工作时，负担要比进程小得多，线程也被称为轻量级进程。
         *
         * 2.程序 ：
         *  程序是含有指令和数据的文件，被存储在磁盘或其他的数据存储设备中，也就是说程序是静态的代码。
         *
         * 3.进程 ：
         * （1）进程是程序的一次执行过程，是系统运行程序的基本单位，因此进程是动态的。
         *  即，系统运行一个程序，即是一个进程从创建，运行到消亡的过程。
         * （2）简单来说，一个进程就是一个执行中的程序，它在计算机中一个指令接着一个指令地执行着，
         *  同时，每个进程还占有某些系统资源如 CPU 时间，内存空间，文件，输入输出设备的使用权等等。
         * ===》 换句话说，当程序在执行时，将会被操作系统载入内存中。
         *
         * 4.线程和进程的区别 ：
         * （1）线程是进程划分成的更小的运行单位。
         * （2）线程和进程最大的不同在于基本上各进程是独立的，而各线程则不一定，因为同一进程中的线程极有可能会相互影响。
         * （3）从另一角度来说，进程属于操作系统的范畴，主要是同一段时间内，可以同时执行一个以上的程序，
         *     而线程则是在同一程序内几乎同时执行一个以上的程序段。
         */
    }
}
